package _07_Math;

/**
 * 提供科学计算和基本的数字操作方法
 * 
 * 常用方法,都是静态方法,使用 Math 类名调用,并且 Math 在 java.lang 下,不需要导入
 * 
 * @author lenovo
 * @Date 2020年7月16日
 * @Time 下午6:42:48
 */
public class Math_01 {

	public static void main(String[] args) {
		// abs : 绝对值
		System.out.println(Math.abs(-1.2));
		// 1.2

		// ceil : 向上取整, 13, 如果是 -12.1 就是 -12
		// 正数 +1 负数不变(不要小数)
		System.out.println(Math.ceil(12.000001));
		// 13.0

		// floor : 向下取整 ,如果是 -12.999 就是 -13
		// 正数不变(不要小数),负数 -1
		System.out.println(Math.floor(12.9999));
		// 12.0

		// 比较大小
		// 谁大返回谁
		System.out.println(Math.max(2.2, 1.2));// 2.2
		// 谁小返回谁
		System.out.println(Math.min(2.2, 1.2));// 1.2

		// 开平方
		System.out.println(Math.sqrt(25));// 5.0

		// 开立方
		System.out.println(Math.cbrt(8));// 2.0

		// 随机数 大于等于 0 且小于 1 的随机数,不会等于 1
		System.out.println(Math.random());// 0.5617399125616064

		// 四舍五入,xxx.5的时候取偶数
		System.out.println(Math.rint(2.4));// 2.0
		System.out.println(Math.rint(2.6));// 3.0
		System.out.println(Math.rint(2.5));// 2.0
		System.out.println(Math.rint(3.5));// 4.0

		// N 的 M 次方 : 2 ^ 3
		System.out.println(Math.pow(2, 31));// 2.147483648E9
	}

}
